﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace 数据库作业
{
    public partial class 管理页面 : Form
    {
        public 管理页面()
        {
            InitializeComponent();
            this.StartPosition = FormStartPosition.CenterScreen;                                            //本窗体启动位置设为屏幕中央； 
            
        }

        private void button2_Click(object sender, EventArgs e)
        {
            SqlConnection sqlConnection = new SqlConnection();                                              //声明并实例化SQL连接；
            sqlConnection.ConnectionString =
                "Server=LAPTOP-44A7H02N\\SQLEXPRESS;Database=门诊2019;Integrated Security=sspi";                             //在字符串变量中，描述连接字符串所需的服务器地址、数据库名称、集成安全性（即是否使用Windows验证）；
            SqlCommand sqlCommand = new SqlCommand();                                                       //声明并实例化SQL命令；
            sqlCommand.Connection = sqlConnection;                                                          //将SQL命令的连接属性指向SQL连接；
            sqlCommand.CommandText = "SELECT * FROM tb_doctor WHERE ID=@ID;";                              //指定SQL命令的命令文本；
            sqlCommand.Parameters.AddWithValue("@ID", "3001");                                        //向SQL命令的参数集合添加参数的名称、值；
            sqlConnection.Open();                                                                           //打开SQL连接；
            SqlDataReader sqlDataReader = sqlCommand.ExecuteReader(); //调用SQL命令的方法ExecuteReader来执行命令，并获取数据阅读器；
            if (sqlDataReader.Read())                                                                       //若数据阅读器成功读取到下一条记录（首次查询则表示第一条记录）；
            {
                this.textBox1.Text = sqlDataReader["ID"].ToString();                                          //在数据阅读器的索引器中指定列名，从而访问当前记录的指定列的值，并赋予相应控件；
                this.textBox2.Text = sqlDataReader["name"].ToString();
                if (sqlDataReader["sex"].ToString() == "男")
                {
                    this.radioButton1.Checked = true;
                }
                else {
                    this.radioButton2.Checked = true;
                }
                
                this.comboBox1.Text = sqlDataReader["Position"].ToString();
                this.textBox3.Text = sqlDataReader["summary"].ToString();
               
               
            }
            sqlDataReader.Close();
    }                                
        

       
        
       

      

        private void 更新_Click(object sender, EventArgs e)
        {
             SqlConnection sqlConnection = new SqlConnection();                                              //声明并实例化SQL连接；
            sqlConnection.ConnectionString =
               "Server=LAPTOP-44A7H02N\\SQLEXPRESS;Database=门诊2019;Integrated Security=sspi";                          //配置管理器从配置文件读取连接字符串，并将之赋予SQL连接的连接字符串属性；
            SqlCommand sqlCommand = new SqlCommand();                                                       //声明并实例化SQL命令；
            sqlCommand.Connection = sqlConnection;                                                          //将SQL命令的连接属性指向SQL连接；
            sqlCommand.CommandText =                                                                        //指定SQL命令的命令文本；
                "UPDATE tb_doctor"
                + " SET name=@name,sex=@sex,Position=@Position,Worktim=@Worktim,ID=@ID,summary=@summary"
                + " WHERE ID=@ID;";
            sqlCommand.Parameters.AddWithValue("@name", this.textBox2.Text.Trim());                         //向SQL命令的参数集合添加参数的名称、值；
            sqlCommand.Parameters.AddWithValue("@sex", this.radioButton1.Text.Trim());
            sqlCommand.Parameters.AddWithValue("@Worktim", this.dateTimePicker1.Value);
            sqlCommand.Parameters.AddWithValue("@ID", "3001");
            sqlCommand.Parameters.AddWithValue("@summary", this.textBox3.Text.Trim());
            sqlCommand.Parameters.AddWithValue("@Position",comboBox1 .Text .Trim () );
            sqlConnection.Open();                                                                           //打开SQL连接；
            int rowAffected = sqlCommand.ExecuteNonQuery();                                                 //调用SQL命令的方法ExecuteNonQuery来执行命令，向数据库写入数据，并返回受影响行数；
            sqlConnection.Close();                                                                          //关闭SQL连接；
            MessageBox.Show("更新" + rowAffected.ToString() + "行。"); 
     

        }

        private void button4_Click_1(object sender, EventArgs e)
        {

            管理员登录 form = new 管理员登录();
            form.Show();
            this.Hide();
        }

       
    }
}
